home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ray Dream Studio
/
Ray Dream Studio (CDRAYD1) (Ray Dream) (1995).iso
/
DREAMSDK.WIN
/
INCLUDE
/
I3DSHSCN.H
< prev
next >
Wrap
C/C++ Source or Header
|
1995-11-04
|
4KB
|
76 lines
/* $Id: I3DSHSCN.H 1.4 1995/11/04 17:22:23 YannPC Exp $ */
/*****************************************************************************\
* *
* I3DShScn.h *
* I3DShScene definition *
* *
* Copyright (c) 1995, Ray Dream, Inc. All rights reserved. *
* *
\*****************************************************************************/
#ifndef __I3DSHSCN__
#define __I3DSHSCN__
#ifndef __I3DSHOBJ__
#include "I3DShObj.h"
#endif
#ifndef __I3DSHTRE__
#include "I3DShTre.h"
#endif
//****** Globally Unique Ids **************************************************
DEFINE_GUID(IID_I3DShScene, 0xD4E4AC00L, 0x3A02, 0x101C, 0x88, 0x5F, 0x04, 0x02, 0x1C, 0x00, 0x70, 0x02);
/*****************************************************************************\
* I3DShScene *
* *
* Topmost data structure that contains all the data of a scene. *
* *
\*****************************************************************************/
#undef INTERFACE
#define INTERFACE I3DShScene
DECLARE_INTERFACE_(I3DShScene, IUnknown) {
// IUnknown methods
STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE;
STDMETHOD_(ULONG, AddRef) (THIS) PURE;
STDMETHOD_(ULONG, Release) (THIS) PURE;
// I3DShScene methods
//-- 3D Objects list
STDMETHOD_(ULONG, Get3DObjectsCount) (THIS) PURE;
STDMETHOD_(I3DShObject*, Get3DObjectByIndex) (THIS_ ULONG index) PURE; // index is 1 based
STDMETHOD_(I3DShObject*, Get3DObjectByName) (THIS_ char* name) PURE;
STDMETHOD(Insert3DObject) (THIS_ I3DShObject* object) PURE;
STDMETHOD(Remove3DObject) (THIS_ I3DShObject* object) PURE;
STDMETHOD(Changed3DObject) (THIS_ I3DShObject* object) PURE;
//-- Tree root (Universe) setting
STDMETHOD_(I3DShGroup*, GetTreeRoot) (THIS) PURE;
STDMETHOD(SetTreeRoot) (THIS_ I3DShGroup* universe) PURE; // Works only if there was no tree root in the scene
STDMETHOD(CreateTreeRootIfNone) (THIS) PURE;
//-- Quick tree access
STDMETHOD_(I3DShTreeElement*, GetTreeElementByName) (THIS_ char* name) PURE;
STDMETHOD_(ULONG, GetInstancesCount) (THIS) PURE;
STDMETHOD_(I3DShInstance*, GetInstanceByIndex) (THIS_ ULONG index) PURE; // index is 1 based
STDMETHOD_(ULONG, GetLightsourcesCount) (THIS) PURE;
STDMETHOD_(I3DShLightsource*, GetLightsourceByIndex) (THIS_ ULONG index) PURE; // index is 1 based
STDMETHOD_(ULONG, GetCamerasCount) (THIS) PURE;
STDMETHOD_(I3DShCamera*, GetCameraByIndex) (THIS_ ULONG index) PURE; // index is 1 based
//-- Misc. rendering settings
STDMETHOD(SetProductionFormat) (THIS_ NUM3D sizeh, NUM3D sizev, NUM3D dpi) PURE; // sizeh and sizev in points (=1/72 inch)
STDMETHOD(GetProductionFormat) (THIS_ NUM3D* sizeh, NUM3D* sizev, NUM3D* dpi) PURE; // sizeh and sizev in points (=1/72 inch)
STDMETHOD(CreateRenderingCameraIfNone) (THIS_ ULONG cameraType, BOOLEAN createDistantLight) PURE;
STDMETHOD_(I3DShCamera*, GetRenderingCamera) (THIS) PURE;
STDMETHOD(SetRenderingCamera) (THIS_ I3DShCamera* camera) PURE;
//-- Misc. Animation
STDMETHOD_(ULONG, GetTime) (THIS_ NUM3D* ticks) PURE;
};
#endif